package main

import "time"

type ShipConfig struct {
	MMSI      int       `json:"mmsi,omitempty"`
	StartTime time.Time `json:"startTime,omitempty"`
}

type ServerConfig struct {
	Driver string `json:"driver,omitempty"`
	DSN    string `json:"dsn,omitempty"`
}

type RequesterConfig struct {
	Method   string              `json:"method,omitempty"`
	URL      string              `json:"url,omitempty"`
	Headers  map[string][]string `json:"headers,omitempty"`
	Template string              `json:"template,omitempty"`
}

type Config struct {
	ShipConfigs     []ShipConfig    `json:"ships,omitempty"`
	ServerConfig    ServerConfig    `json:"server,omitempty"`
	StartTime       time.Time       `json:"startTime,omitempty"`
	SavePointFile   string          `json:"savePointFile,omitempty"`
	MaxLines        int             `json:"maxLines,omitempty"`
	RequesterConfig RequesterConfig `json:"request,omitempty"`
	LastHistory     string          `json:"lastHistory"`
}
